<?php

namespace App\Contracts\Repositories;

interface QuizRepository
{
    public function create(array $data);
    public function find($id, $columns = ['*']);
    public function findAll(array $conditions, $columns = ['*']);
    public function types();
    public function update($id, array $data);
    public function delete($id);
    public function setSort($id, $sort);
    public function paginateWithOptions($activityId, $perPage, $columns = ['*']);
    public function findAllWithOptions($activityId, array $columns = ['*'], $withoutType = null);
    public function findIn($column, array $values, $withOptions = false, array $columns = ['*']);
    public function findQuizResult($activityId, $page = 1, $limit = 0);
}
